Adding a Custom Repository to Wabbajack
This is a guide for how you can make your own custom repository for making your Mod Lists show up on the Wabbajack in app gallery as unofficial Mod Lists.
This guide requires you to have already completed Getting CDN Access.
Create a Github Repository
To start with, log into your Github Account and create a new repository by clicking the +
next to your avatar:
On the next page, give the repository a name, make sure it's set to public, and have Github create a README.md
by default. Click Create repository
On the next page, click Add file
Set the name of the file to modlists.json
. It can be named anything, but it's nice to have some uniformity.
Now fill out all the various fields for your modlist, you can use this text as a template:
[
{
"$type": "ModListMetadata, Wabbajack.Lib",
"title": "My Modlist",
"description": "Best thing since sliced bread",
"author": "<any name you want to show up in the UI>",
"maintainers": [
"github/<your github name>"
],
"game": "skyrimspecialedition",
"tags": [
"testing",
"<any tags you want in the UI, each in its own string"
],
"nsfw": false,
"image_contains_title": false,
"force_down": false,
"links": {
"$type": "Links, Wabbajack.Lib",
"image": "<link to an image to show in the UI>",
"readme": "<link to your readme for your modlist>",
"download": "https://authored-files.wabbajack.org/Halgaris Helper.wabbajack_29d245c9-5f7f-4394-b600-a22e43427337",
"machineURL": "machineURL",
"discordURL": "<your discord link here>"
},
"download_metadata": {
"$type": "DownloadMetadata, Wabbajack.Lib",
"Hash": "e1+K7eJbDJw=",
"Size": 0,
"NumberOfArchives": 14,
"SizeOfArchives": 135206078,
"NumberOfInstalledFiles": 1311,
"SizeOfInstalledFiles": 336453775
},
"version": "1.0"
}
]
Notes on the metadata above:
- Download Metadata - The contents of
download_metadata
can be found in the.wabbajack.meta.json
file that's created by Wabbajack after you create compile your list. - MachineURL - no strings, punctuation or special characters allowed (except underscore
_
). This name must be unique to this repository image_contains_title
- set totrue
if your gallery image contains the modlist title- Note: Image URL MUST be in the following format:
https://raw.githubusercontent.com/user/repository/main/nameofimagefile.png
Obtainlable by clicking the 'Download' button next to the image.
- Note: Image URL MUST be in the following format:
force_down
- something broken in your list? Set this to true to disable it in the UInsfw
- you must set this to true if your modlist contains explicit sexual acts. If your list just contains nudity, then you don't have to set this to true.
Once you're satisfied with the contents of the metadata, validate your json and click Commit new file
afterwards.
Adding your repository
Now you need to add your repository to the Wabbajack master repository list. View your modlists.json
file in GitHub, click on the Raw
button and copy the URL on the page that opens.
Now navigate to this file: https://github.com/wabbajack-tools/mod-lists/blob/master/repositories.json and select the Edit
button.
Add a new line (don't forget the comma after the last line) and give your repository a unique name, and paste in the link you copied above.
Note: URL MUST be in the following format: https://raw.githubusercontent.com/user/repository/main/modlists.json. Obtainlable by opening the modlists.json file clicking the 'Raw' button. Copy the URL on the page that opens.
Click "Create a new Branch..." and "Propose Changes".
On the next page, click "Create Pull Request".
Probably best at this point to put a link to the Pull Request you just created in the Wabbajack Discord but otherwise we'll probably see it soon and take a look. One the PR is merged, your modlist should show up in the Wabbajack UI.
Common Errors
When uploading a new list to your repository, there are several errors that you may encounter.
You do not have access to this list
If you get this error, chances are the list's definition does not include your Github username in the list of maintainers. Remember to prefix your username with github/
so if your username is JohnDoe
then the maintainer list should have an entry of "github/JohnDoe"
.
Namespaced list required
Lists names provided in the UI should be namespaced with the repo name. The format in of the machineURL
entry in Wabbajack is <repo>/<list-name>
. So if you have a repo named JohnsLists
and your list that you are updating is JohnsSkyrimMakeover
then the machineURL field in WJ's compiler UI should be set to JohnsLists/JohnsSkyrimMakeover
.
404 Error when updating a wj-featured/
list
The repo wj-featured
is managed by the wabbajack team, you'll need to request membership to the WJ modlist team group, or just go and make your own repo.
404 errors when uploading lists
You probably forgot to set the permissions on your Github Personal access token, verify that's all setup correctly as per these instructions